|
 |
Applicazioni Software |
PROGETTO n° 02 - 4/10
[62 di 166] |
 | La lettura degli 8 sensori obbliga il processore a
rimanere in polling (interrogazione) sul Registro d'ingresso
0379H/0279H,
senza poter fare altro se non verificare l'eventuale
variazione del
loro stato. |
 | Si rende dunque necessaria una
struttura di tipo REPEAT... UNTIL
(con riferimento al Pascal);
in Assemby si realizza con un loop,
cioè una sequenza di istruzioni ripetuta ad oltranza,
compresa tra quella identificata
dall'etichetta
Prnt01
e
la
JZ Prnt01. |
 | Naturalmente dentro il
ciclo deve esserci un artificio che dia la possibilità di terminare il
processo di
lettura; in caso contrario il programma non avrebbe mai fine.. |
 | Il nostro programma prevede
una via d'uscita non appena viene premuto un
tasto qualunque. |
 | La casella di testo
mostra in sintesi il
loop
fondamentale del progetto:
 | il settore iniziale,
indicato dai puntini (che tratteremo nelle prossime pagine...)
rappresenta il
codice di gestione vero e proprio
e viene
ripetuto
in continuazione, fino a quando viene
premuto
un tasto qualunque. |
 |
la possibilità di porre fine all'esecuzione
ciclica di queste istruzioni è affidata alla
Funzione 01H dell'INT 16H,
che provvede
appunto alla lettura della
tastiera: se nessun tasto viene premuto la
Funzione lascia la flag di Zero a 0
e il loop viene automaticamente ripetuto |
 | se si
preme
un tasto qualunque
la
Funzione forza la flag di Zero a 1, il loop ha termine e
viene eseguita l'istruzione successiva a
JZ Prnt01, cioè il
programma ha termine |
|
 | Nelle pagine seguenti prenderò in esame ogni dettaglio di
questo ciclo (loop)
di istruzioni. |
©
2001-2006 - Studio Tecnico
ing. Giorgio OBER
Tutti i diritti sono riservati
|